CS 583: Approximation Algorithms: Covering Problems∗
نویسنده
چکیده
Packing and Covering problems together capture many important problems in combinatorial optimization. We will consider covering problems in these notes. Two canonical covering problems are Vertex Cover and its generalization Set Cover. They play an important role in the study of approximation algorithms. A vertex cover of a graph G = (V,E) is a set S ⊆ V such that for each edge e ∈ E, at least one end point of e is in S. Note that we are picking vertices to cover the edges. In the Vertex Cover problem, our goal is to find a smallest vertex cover of G. In the weighted version of the problem, a weight function w : V → R+ is given, and our goal is to find a minimum weight vertex cover of G. The unweighted version of the problem is also known as Cardinality Vertex Cover. In the Set Cover problem the input is a set U of n elements, and a collection S = {S1, S2, . . . , Sm} of m subsets of U such that ⋃ i Si = U . Our goal in the Set Cover problem is to select as few subsets as possible from S such that their union covers U . In the weighted version each set Si has a non-negative weight wi the goal is to find a set cover of minimim weight. Closely related to the Set Cover problem is the Maximum Coverage problem. In this problem the input is again U and S but we are also given an integer k ≤ m. The goal is to select k subsets from S such that their union has the maximum cardinality. Note that Set Cover is a minimization problem while Maximum Coverage is a maximization problem. Set Cover is essentially equivalent to the Hitting Set problem. In Hitting Set the input is U and S but the goal is to pick the smallest number of elements of U that cover the given sets in S. In other words we are seeking a set cover in the dual set system. Set Cover is an important problem because it and its special cases not only arise as an explicit problems but also because many implicit covering problems can be cast as special cases. Consider the well known MST problem in graphs. One way to phrase MST is the following: given an edgeweighted graph G = (V,E) find a minimum cost subset of the edges that cover all the cuts of G. This may appear to be a strange way of looking at the MST problem but this view is useful as we will see later. Covering problems have the feature that a superset of a feasible solution is also feasible. More abstractly one can cast covering problems as the following. We are given a finite ground set V (vertices in a graph or sets in a set system) and a family of feasible solutions I ⊆ 2V where I is upward closed; by this we mean that if A ∈ I and A ⊂ B then B ∈ I. The goal is to find the smallest cardinality set A in I. In the weighted case V has weights and the goal is to find a minimum weight set in I. ∗Based on previous scribed lecture notes of Abul Hassan Samee and Lewis Tseng.
منابع مشابه
CS 583: Approximation Algorithms: Introduction∗
The complexity class P contains the set of problems that can be solved in polynomial time. From a theoretical viewpoint, this describes the class of tractable problems, that is, problems that can be solved efficiently. The class NP is the set of problems that can be solved in non-deterministic polynomial time, or equivalently, problems for which a solution can be verified in polynomial time. NP...
متن کاملIterative Packing for Demand and Hypergraph Matching
Iterative rounding has enjoyed tremendous success in elegantly resolving open questions regarding the approximability of problems dominated by covering constraints. Although iterative rounding methods have been applied to packing problems, no single method has emerged that matches the effectiveness and simplicity afforded by the covering case. We offer a simple iterative packing technique that ...
متن کاملConstant Approximation Algorithm for Non-Uniform Capacitated Multi-Item Lot-Sizing via Strong Covering Inequalities
We study the non-uniform capacitated multi-item lot-sizing (CMILS) problem. In this problem, there is a set of demands over a planning horizon of T time periods and all demands must be satisfied on time. We can place an order at the beginning of each period s, incurring an ordering cost Ks. The total quantity of all products ordered at time s can not exceed a given capacity Cs. On the other han...
متن کاملSet Covering and Network Optimization: Dynamic and Approximation Algorithms
In this short note we summarize our results on development and analysis of approximation and dynamic algorithms for set covering and network optimization problems. The results include probabilistic analysis of set covering algorithms, development and analysis of dynamic algorithms for graph optimization problems, game-theoretic analysis of a file-sharing network model, and approximation algorit...
متن کاملApproximation algorithms for the k-clique covering problems
The problem of covering edges and vertices in a graph (or in a hypergraph) was motivated by a problem arising in the context of the component assembly problem. The problem is as follows: given a graph and a clique size k, find the minimum number of k-cliques such that all edges and vertices of the graph are covered by (included in) the cliques. This paper provides a collection of approximation ...
متن کامل